From cbcb73a86dea0c0b9917b49b37095463155c5377 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Date: Sun, 24 Jun 2018 23:33:55 +0200
Subject: [PATCH] nat/fork-inferior: include linux-ptrace.h

To decide whether fork() or vfork() should be used, fork-inferior.c
uses the following test:

  #if !(defined(__UCLIBC__) && defined(HAS_NOMMU))

However, HAS_NOMMU is never defined, because it gets defined in
linux-ptrace.h, which is not included by fork-inferior.c. Due to this,
gdbserver fails to build on noMMU architectures. This commit fixes
that by simply including linux-ptrace.h.

This bug was introduced by commit
2090129c36c7e582943b7d300968d19b46160d84 ("Share fork_inferior et al
with gdbserver"). Indeed, the same fork()/vfork() selection was done,
but in another file where linux-ptrace.h was included.

Fixes the following build issue:

../nat/fork-inferior.c: In function 'pid_t fork_inferior(const char*, const string&, char**, void (*)(), void (*)(int), void (*)(), const char*, void (*)(const char*, char* const*, char* const*))':
../nat/fork-inferior.c:376:11: error: 'fork' was not declared in this scope
     pid = fork ();
           ^~~~
../nat/fork-inferior.c:376:11: note: suggested alternative: 'vfork'
     pid = fork ();
           ^~~~
           vfork

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[Romain: rebase on gdb 8.3]
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
 gdb/nat/fork-inferior.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gdb/nat/fork-inferior.c b/gdb/nat/fork-inferior.c
index 4df9a98047e..9bf0f6059f5 100644
--- a/gdb/nat/fork-inferior.c
+++ b/gdb/nat/fork-inferior.c
@@ -27,6 +27,7 @@
 #include "gdbsupport/pathstuff.h"
 #include "gdbsupport/signals-state-save-restore.h"
 #include "gdbsupport/gdb_tilde_expand.h"
+#include "linux-ptrace.h"
 #include <vector>
 
 extern char **environ;
-- 
2.37.1

